<?php

require_once(BaseConfig::LoadClass('objeto_base.class.php'    ));
require_once(BaseConfig::LoadClass('filtro.class.php'         ));
require_once(BaseConfig::LoadClass('abc.class.php'            ));
require_once(BaseConfig::LoadClass('carga_excel.class.php'    ));

class Inventario extends ObjetoBase {
  var $intIdInventario ;
  var $dteFecha        ;
  var $strCodigo       ;
  var $strDescripcion  ;
  var $intTotalSMO     ;
  var $intDisponibleSMO;
  var $intRetenidoSMO  ;
  var $intReempaqueSMO ;
  var $intTotalAGS     ;
  var $intDisponibleAGS;
  var $intRetenidoAGS  ;
  var $intReempaqueAGS ;
  var $intTotalTIJ     ;
  var $intDisponibleTIJ;
  var $intRetenidoTIJ  ;
  var $intReempaqueTIJ ;
  var $intTotalTUL     ;
  var $intDisponibleTUL;
  var $intRetenidoTUL  ;
  var $intReempaqueTUL ;
  var $intTotalCAN     ;
  var $intDisponibleCAN;
  var $intRetenidoCAN  ;
  var $intReempaqueCAN ;
  var $intTotalCUL     ;
  var $intDisponibleCUL;
  var $intRetenidoCUL  ;
  var $intReempaqueCUL ;
  var $intTotalVIL     ;
  var $intDisponibleVIL;
  var $intRetenidoVIL  ;
  var $intReempaqueVIL ;
  var $intTotalMON     ;
  var $intDisponibleMON;
  var $intRetenidoMON  ;
  var $intReempaqueMON ;
  var $intTotalGUA     ;
  var $intDisponibleGUA;
  var $intRetenidoGUA  ;
  var $intReempaqueGUA ;
  
  function Inventario($intIdInventario = 0) {
    $arrMapaDatos = Array();
    
    $arrMapaDatos['id_inventario' ] = Array('NombreVariable' => 'intIdInventario' , 'TipoVariable' => 'I');
    $arrMapaDatos['fecha'         ] = Array('NombreVariable' => 'dteFecha'        , 'TipoVariable' => 'D');
    $arrMapaDatos['codigo'        ] = Array('NombreVariable' => 'strCodigo'       , 'TipoVariable' => 'S');
    $arrMapaDatos['descripcion'   ] = Array('NombreVariable' => 'strDescripcion'  , 'TipoVariable' => 'S');
    $arrMapaDatos['total_smo'     ] = Array('NombreVariable' => 'intTotalSMO'     , 'TipoVariable' => 'N');
    $arrMapaDatos['disponible_smo'] = Array('NombreVariable' => 'intDisponibleSMO', 'TipoVariable' => 'N');
    $arrMapaDatos['retenido_smo'  ] = Array('NombreVariable' => 'intRetenidoSMO'  , 'TipoVariable' => 'N');
    $arrMapaDatos['reempaque_smo' ] = Array('NombreVariable' => 'intReempaqueSMO' , 'TipoVariable' => 'N');
    $arrMapaDatos['total_ags'     ] = Array('NombreVariable' => 'intTotalAGS'     , 'TipoVariable' => 'N');
    $arrMapaDatos['disponible_ags'] = Array('NombreVariable' => 'intDisponibleAGS', 'TipoVariable' => 'N');
    $arrMapaDatos['retenido_ags'  ] = Array('NombreVariable' => 'intRetenidoAGS'  , 'TipoVariable' => 'N');
    $arrMapaDatos['reempaque_ags' ] = Array('NombreVariable' => 'intReempaqueAGS' , 'TipoVariable' => 'N');
    $arrMapaDatos['total_tij'     ] = Array('NombreVariable' => 'intTotalTIJ'     , 'TipoVariable' => 'N');
    $arrMapaDatos['disponible_tij'] = Array('NombreVariable' => 'intDisponibleTIJ', 'TipoVariable' => 'N');
    $arrMapaDatos['retenido_tij'  ] = Array('NombreVariable' => 'intRetenidoTIJ'  , 'TipoVariable' => 'N');
    $arrMapaDatos['reempaque_tij' ] = Array('NombreVariable' => 'intReempaqueTIJ' , 'TipoVariable' => 'N');
    $arrMapaDatos['total_tul'     ] = Array('NombreVariable' => 'intTotalTUL'     , 'TipoVariable' => 'N');
    $arrMapaDatos['disponible_tul'] = Array('NombreVariable' => 'intDisponibleTUL', 'TipoVariable' => 'N');
    $arrMapaDatos['retenido_tul'  ] = Array('NombreVariable' => 'intRetenidoTUL'  , 'TipoVariable' => 'N');
    $arrMapaDatos['reempaque_tul' ] = Array('NombreVariable' => 'intReempaqueTUL' , 'TipoVariable' => 'N');
    $arrMapaDatos['total_can'     ] = Array('NombreVariable' => 'intTotalCAN'     , 'TipoVariable' => 'N');
    $arrMapaDatos['disponible_can'] = Array('NombreVariable' => 'intDisponibleCAN', 'TipoVariable' => 'N');
    $arrMapaDatos['retenido_can'  ] = Array('NombreVariable' => 'intRetenidoCAN'  , 'TipoVariable' => 'N');
    $arrMapaDatos['reempaque_can' ] = Array('NombreVariable' => 'intReempaqueCAN' , 'TipoVariable' => 'N');
    $arrMapaDatos['total_cul'     ] = Array('NombreVariable' => 'intTotalCUL'     , 'TipoVariable' => 'N');
    $arrMapaDatos['disponible_cul'] = Array('NombreVariable' => 'intDisponibleCUL', 'TipoVariable' => 'N');
    $arrMapaDatos['retenido_cul'  ] = Array('NombreVariable' => 'intRetenidoCUL'  , 'TipoVariable' => 'N');
    $arrMapaDatos['reempaque_cul' ] = Array('NombreVariable' => 'intReempaqueCUL' , 'TipoVariable' => 'N');
    $arrMapaDatos['total_vil'     ] = Array('NombreVariable' => 'intTotalVIL'     , 'TipoVariable' => 'N');
    $arrMapaDatos['disponible_vil'] = Array('NombreVariable' => 'intDisponibleVIL', 'TipoVariable' => 'N');
    $arrMapaDatos['retenido_vil'  ] = Array('NombreVariable' => 'intRetenidoVIL'  , 'TipoVariable' => 'N');
    $arrMapaDatos['reempaque_vil' ] = Array('NombreVariable' => 'intReempaqueVIL' , 'TipoVariable' => 'N');
    $arrMapaDatos['total_mon'     ] = Array('NombreVariable' => 'intTotalMON'     , 'TipoVariable' => 'N');
    $arrMapaDatos['disponible_mon'] = Array('NombreVariable' => 'intDisponibleMON', 'TipoVariable' => 'N');
    $arrMapaDatos['retenido_mon'  ] = Array('NombreVariable' => 'intRetenidoMON'  , 'TipoVariable' => 'N');
    $arrMapaDatos['reempaque_mon' ] = Array('NombreVariable' => 'intReempaqueMON' , 'TipoVariable' => 'N');
    $arrMapaDatos['total_gua'     ] = Array('NombreVariable' => 'intTotalGUA'     , 'TipoVariable' => 'N');
    $arrMapaDatos['disponible_gua'] = Array('NombreVariable' => 'intDisponibleGUA', 'TipoVariable' => 'N');
    $arrMapaDatos['retenido_gua'  ] = Array('NombreVariable' => 'intRetenidoGUA'  , 'TipoVariable' => 'N');
    $arrMapaDatos['reempaque_gua' ] = Array('NombreVariable' => 'intReempaqueGUA' , 'TipoVariable' => 'N');
    
    $this->__ArmarDatosPrivados('inventarios', $arrMapaDatos, 'id_inventario');
    $this->SeleccionarPorIndice($intIdInventario);
  }
}

class FiltroInventario extends Filtro {
  function FiltroInventario() {
    $arrProceso['fecha'         ] = "Fecha"                 ;
    $arrProceso['codigo'        ] = "Codigo"                ;
    $arrProceso['descripcion'   ] = "Descripcion"           ;
    $arrProceso['total_smo'     ] = "Total SMO"             ;
    $arrProceso['disponible_smo'] = "Disponible SMO"        ;
    $arrProceso['retenido_smo'  ] = "Retenido SMO"          ;
    $arrProceso['reempaque_smo' ] = "Reempaque SMO"         ;
    $arrProceso['total_ags'     ] = "Total Ags"             ;
    $arrProceso['disponible_ags'] = "Disponible Ags"        ;
    $arrProceso['retenido_ags'  ] = "Retenido Ags"          ;
    $arrProceso['reempaque_ags' ] = "Reempaque Ags"         ;
    $arrProceso['total_tij'     ] = "Total Tijuana"         ;
    $arrProceso['disponible_tij'] = "Disponible Tijuana"    ;
    $arrProceso['retenido_tij'  ] = "Retenido Tijuana"      ;
    $arrProceso['reempaque_tij' ] = "Reempaque Tijuana"     ;
    $arrProceso['total_tul'     ] = "Total Tula"            ;
    $arrProceso['disponible_tul'] = "Disponible Tula"       ;
    $arrProceso['retenido_tul'  ] = "Retenido Tula"         ;
    $arrProceso['reempaque_tul' ] = "Reempaque Tula"        ;
    $arrProceso['total_can'     ] = "Total Cancun"          ;
    $arrProceso['disponible_can'] = "Disponible Cancun"     ;
    $arrProceso['retenido_can'  ] = "Retenido Cancun"       ;
    $arrProceso['reempaque_can' ] = "Reempaque Cancun"      ;
    $arrProceso['total_cul'     ] = "Total Culiacan"        ;
    $arrProceso['disponible_cul'] = "Disponible Culiacan"   ;
    $arrProceso['retenido_cul'  ] = "Retenido Culiacan"     ;
    $arrProceso['reempaque_cul' ] = "Reempaque Culiacan"    ;
    $arrProceso['total_vil'     ] = "Total Villag 2"        ;
    $arrProceso['disponible_vil'] = "Disponible Villag 2"   ;
    $arrProceso['retenido_vil'  ] = "Retenido Villag 2"     ;
    $arrProceso['reempaque_vil' ] = "Reempaque Villag 2"    ;
    $arrProceso['total_mon'     ] = "Total Monterrey"       ;
    $arrProceso['disponible_mon'] = "Disponible Monterrey"  ;
    $arrProceso['retenido_mon'  ] = "Retenido Monterrey"    ;
    $arrProceso['reempaque_mon' ] = "Reempaque Monterrey"   ;
    $arrProceso['total_gua'     ] = "Total Guadalajara"     ;
    $arrProceso['disponible_gua'] = "Disponible Guadalajara";
    $arrProceso['retenido_gua'  ] = "Retenido Guadalajara"  ;
    $arrProceso['reempaque_gua' ] = "Reempaque Guadalajra"  ;
    
    parent::CrearFiltro("inventarios", "id_inventario", $arrProceso, "Busqueda", "", "id_inventario ASC", "Inventario");
  }
}

class Carga_Inventario extends CargaExcel {
  function Carga_Inventario() {
    parent::CargaExcel();
    
    $arrProceso['dummy_01'      ] = "NA"                    ;
    $arrProceso['dummy_02'      ] = "NA"                    ;
    $arrProceso['dummy_03'      ] = "NA"                    ;
    $arrProceso['dummy_04'      ] = "NA"                    ;
    
    $arrProceso['codigo'        ] = "Codigo"                ;
    $arrProceso['descripcion'   ] = "Descripcion"           ;
    $arrProceso['total_smo'     ] = "Total SMO"             ;
    $arrProceso['disponible_smo'] = "Disponible SMO"        ;
    $arrProceso['retenido_smo'  ] = "Retenido SMO"          ;
    $arrProceso['reempaque_smo' ] = "Reempaque SMO"         ;
    $arrProceso['total_ags'     ] = "Total Ags"             ;
    $arrProceso['disponible_ags'] = "Disponible Ags"        ;
    $arrProceso['retenido_ags'  ] = "Retenido Ags"          ;
    $arrProceso['reempaque_ags' ] = "Reempaque Ags"         ;
    $arrProceso['total_tij'     ] = "Total Tijuana"         ;
    $arrProceso['disponible_tij'] = "Disponible Tijuana"    ;
    $arrProceso['retenido_tij'  ] = "Retenido Tijuana"      ;
    $arrProceso['reempaque_tij' ] = "Reempaque Tijuana"     ;
    $arrProceso['total_tul'     ] = "Total Tula"            ;
    $arrProceso['disponible_tul'] = "Disponible Tula"       ;
    $arrProceso['retenido_tul'  ] = "Retenido Tula"         ;
    $arrProceso['reempaque_tul' ] = "Reempaque Tula"        ;
    $arrProceso['total_can'     ] = "Total Cancun"          ;
    $arrProceso['disponible_can'] = "Disponible Cancun"     ;
    $arrProceso['retenido_can'  ] = "Retenido Cancun"       ;
    $arrProceso['reempaque_can' ] = "Reempaque Cancun"      ;
    $arrProceso['total_cul'     ] = "Total Culiacan"        ;
    $arrProceso['disponible_cul'] = "Disponible Culiacan"   ;
    $arrProceso['retenido_cul'  ] = "Retenido Culiacan"     ;
    $arrProceso['reempaque_cul' ] = "Reempaque Culiacan"    ;
    $arrProceso['total_vil'     ] = "Total Villag 2"        ;
    $arrProceso['disponible_vil'] = "Disponible Villag 2"   ;
    $arrProceso['retenido_vil'  ] = "Retenido Villag 2"     ;
    $arrProceso['reempaque_vil' ] = "Reempaque Villag 2"    ;
    $arrProceso['total_mon'     ] = "Total Monterrey"       ;
    $arrProceso['disponible_mon'] = "Disponible Monterrey"  ;
    $arrProceso['retenido_mon'  ] = "Retenido Monterrey"    ;
    $arrProceso['reempaque_mon' ] = "Reempaque Monterrey"   ;
    $arrProceso['total_gua'     ] = "Total Guadalajara"     ;
    $arrProceso['disponible_gua'] = "Disponible Guadalajara";
    $arrProceso['retenido_gua'  ] = "Retenido Guadalajara"  ;
    $arrProceso['reempaque_gua' ] = "Reempaque Guadalajra"  ;
    
    $arrConstantes["fecha"] = date("Y-m-d H:i:s");
    
    $arrReferencias = array();
    
    $this->Init("Inventario", "inventario", $arrProceso, $arrReferencias, $arrConstantes);
    
    $this->intPrimeraLinea = 2;
    $this->intCargarSoloCompleto = 0;
    $this->bolLimpiarTablaAntes = true;
//    $this->__arrInfoSaltarLinea[] = "TOTAL";
  }
}


class ABC_Inventario extends ABC_Base {
  function ABC_Inventario() {
    $strClaseBase     = "Inventario"      ;
    $strClaseFiltro   = "FiltroInventario";
    $strClaseCarga    = "Carga_Inventario";
    $strCampoMostrar  = "codigo"          ;
    $strOpcionListado = "abc_inventario"  ;
    $strOpcionGuardar = "abc_inventario"  ;

    $arrNombresColumnas = array();
    $arrNombresColumnas['fecha'         ] = "Fecha"                 ;
    $arrNombresColumnas['codigo'        ] = "Codigo"                ;
    $arrNombresColumnas['descripcion'   ] = "Descripcion"           ;
    $arrNombresColumnas['total_smo'     ] = "Total SMO"             ;
    $arrNombresColumnas['disponible_smo'] = "Disponible SMO"        ;
    $arrNombresColumnas['retenido_smo'  ] = "Retenido SMO"          ;
    $arrNombresColumnas['reempaque_smo' ] = "Reempaque SMO"         ;
    $arrNombresColumnas['total_ags'     ] = "Total Ags"             ;
    $arrNombresColumnas['disponible_ags'] = "Disponible Ags"        ;
    $arrNombresColumnas['retenido_ags'  ] = "Retenido Ags"          ;
    $arrNombresColumnas['reempaque_ags' ] = "Reempaque Ags"         ;
    $arrNombresColumnas['total_tij'     ] = "Total Tijuana"         ;
    $arrNombresColumnas['disponible_tij'] = "Disponible Tijuana"    ;
    $arrNombresColumnas['retenido_tij'  ] = "Retenido Tijuana"      ;
    $arrNombresColumnas['reempaque_tij' ] = "Reempaque Tijuana"     ;
    $arrNombresColumnas['total_tul'     ] = "Total Tula"            ;
    $arrNombresColumnas['disponible_tul'] = "Disponible Tula"       ;
    $arrNombresColumnas['retenido_tul'  ] = "Retenido Tula"         ;
    $arrNombresColumnas['reempaque_tul' ] = "Reempaque Tula"        ;
    $arrNombresColumnas['total_can'     ] = "Total Cancun"          ;
    $arrNombresColumnas['disponible_can'] = "Disponible Cancun"     ;
    $arrNombresColumnas['retenido_can'  ] = "Retenido Cancun"       ;
    $arrNombresColumnas['reempaque_can' ] = "Reempaque Cancun"      ;
    $arrNombresColumnas['total_cul'     ] = "Total Culiacan"        ;
    $arrNombresColumnas['disponible_cul'] = "Disponible Culiacan"   ;
    $arrNombresColumnas['retenido_cul'  ] = "Retenido Culiacan"     ;
    $arrNombresColumnas['reempaque_cul' ] = "Reempaque Culiacan"    ;
    $arrNombresColumnas['total_vil'     ] = "Total Villag 2"        ;
    $arrNombresColumnas['disponible_vil'] = "Disponible Villag 2"   ;
    $arrNombresColumnas['retenido_vil'  ] = "Retenido Villag 2"     ;
    $arrNombresColumnas['reempaque_vil' ] = "Reempaque Villag 2"    ;
    $arrNombresColumnas['total_mon'     ] = "Total Monterrey"       ;
    $arrNombresColumnas['disponible_mon'] = "Disponible Monterrey"  ;
    $arrNombresColumnas['retenido_mon'  ] = "Retenido Monterrey"    ;
    $arrNombresColumnas['reempaque_mon' ] = "Reempaque Monterrey"   ;
    $arrNombresColumnas['total_gua'     ] = "Total Guadalajara"     ;
    $arrNombresColumnas['disponible_gua'] = "Disponible Guadalajara";
    $arrNombresColumnas['retenido_gua'  ] = "Retenido Guadalajara"  ;
    $arrNombresColumnas['reempaque_gua' ] = "Reempaque Guadalajra"  ;

    $arrReferencias = array();
    
    $this->Inicializar($strClaseBase, $arrNombresColumnas, $strOpcionListado, $strOpcionGuardar, $strCampoMostrar, $strClaseFiltro, $arrReferencias, "", $strClaseCarga);
    
    $this->bolABCLista             = true;
    $this->bolABCListaOcultarTD    = true;
    $this->bolPosibleNuevoElemento = false;
    $this->intTipoGuardado         = 1;
    $this->intNumeroRes            = 50;
    $this->bolSoloLectura          = true;
  }
}

?>